package com.itheima.demo01;

public class Student {

    private String name;// 姓名
    private int age;// 年龄
    private String gender;// 性别

    //这个时候一个班的学生是共用一个老师
    //但是当创建每一个学生时就得赋值一次 teacherName,如果不赋值的学生对象老师属性名称为空
    //如下情况：
    /*
     //创建第一个学生对象
        Student s1 = new Student();
        s1.setName("张三");
        s1.setAge(20);
        s1.setGender("男");
        s1.teacherName = "李老师";

        s1.study();
        s1.show();

        //创建第一个学生对象
        Student s2 = new Student();
        s2.setName("李四");
        s2.setAge(21);
        s2.setGender("男");
        // s2.teacherName = "李老师";

        s2.study();
        s2.show();
     */
    //这样代码重复，且不方便维护

    //这个时需要使用静态修修饰符 static
    /*
        1.静态成员
        被static 修饰的成员变量叫静态变量
        特点:
            被该类所有对象共享
        使用:
            使用类名调用
        2.静态方法
        被static 修饰的成员方法叫静态方法
        特点
            多用在工具类和测试类中
            javabean类中很少用到
          使用:
            使用类名调用
     */

    public static String teacherName;//老师姓名

    public Student() {
    }

    public Student(String name, int age, String gender) {
        this.name = name;
        this.age = age;
        this.gender = gender;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getGender() {
        return gender;
    }

    public void setGender(String gender) {
        this.gender = gender;
    }

    public void study() {
        System.out.println(name + "在学习");
    }

    public void show(){
        System.out.println(name + "," + age + "," + gender + "," + teacherName);
    }

}
